#include "include/system/BankSystem.h"
#include "include/core/Customer.h"
#include "include/core/BankAccount.h"
#include "include/core/Transaction.h"

#include <iostream>
#include <exception>

int main()
{
    try
    {
        MiniBanking::BankSystem bankSystem;
        bankSystem.run();
    }
    catch (const std::exception &e)
    {
        // 捕获在 BankSystem 初始化或运行期间可能抛出的标准异常
        std::cerr << "An unexpected error occurred: " << e.what() << std::endl;
        return 1;
    }
    catch (...)
    {
        // 捕获所有其他类型的未知异常
        std::cerr << "An unknown error occurred." << std::endl;
        return 2;
    }

    return 0;
}
